﻿// time: 高亮时间，默认为3000ms
// action: 支持 stay, hide, flash， 默认为flash
// highlightcolor: 高亮颜色，一个reb颜色值，默认为 #FFEC8B

$.fn.highlight = function (options, undefined) {

    var defaultOptions = {
        time: 5000,
        action: 'flash',
        highlighctolor: '#FFEC8B'
    };

    var options = $.extend(defaultOptions, options);
    var highlightcolor = options.highlighctolor;
    var time = options.time;
    var action = options.action;

    this.each(function (index, item) {
        var _self = $(item);
        var originalBgColor = _self.css('background-color');

        switch (action) {
            case 'stay':
                _self.data('originalBgColor', originalBgColor);
                _self.css({
                    'background-color': highlightcolor
                });
                break;
            case 'hide':
                originalBgColor = _self.data('originalBgColor');
                if (originalBgColor == null) {
                    originalBgColor = '#fff';
                }
                _self.css({
                    'background-color': originalBgColor
                });
                break;
            case 'flash':
                _self.css({
                    'background-color': highlightcolor
                })
                .animate(
                    { backgroundColor: originalBgColor },
                    time,
                    'swing',
                    function () {
                        $(item).css({ 'background-color': 'transparent' });
                    })
                .css({
                    'background-color': originalBgColor
                });
                break;
        }

    });
}